package com.ncu.cloundeoffice.controller;


import com.ncu.cloundeoffice.pojo.ResponseResult;
import com.ncu.cloundeoffice.pojo.TJobLevel;
import com.ncu.cloundeoffice.service.TJobLevelService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.Date;
import java.util.List;

@RestController
@RequestMapping("/system/basic/jobLevel")
public class TJobLevelController {

    @Autowired
    private TJobLevelService tJobLevelService;

    /**
     * 查询所有职称
     * @return
     */
    @GetMapping("/")
    public List<TJobLevel> getAllTJobLevel(){
        return tJobLevelService.getAllTJobLevel();
    }

    /**
     * 添加职称
     * @param tJobLevel
     * @return
     */
    @PostMapping("/")
    public ResponseResult addTJobLevel(@RequestBody TJobLevel tJobLevel){
        tJobLevel.setCreateDate(new Date());
        int count = tJobLevelService.addTJobLevel(tJobLevel);
        if(count == 1){
            return ResponseResult.success("添加成功");
        }else {
            return ResponseResult.error("添加失败");
        }
    }

    /**
     * 更新职称
     * @param tJobLevel
     * @return
     */
    @PutMapping("/")
    public ResponseResult updateTJobLevel(@RequestBody TJobLevel tJobLevel){
        int count = tJobLevelService.updateTJobLevel(tJobLevel);
        if(count == 1){
            return ResponseResult.success("更新成功");
        }else {
            return ResponseResult.error("更新失败");
        }
    }

    /**
     * 删除职称
     * @param id
     * @return
     */
    @DeleteMapping("/{id}")
    public ResponseResult deleteTJobLevel(@PathVariable("id") int id){
        int count = tJobLevelService.deleteTJobLevel(id);
        if(count == 1){
            return ResponseResult.success("删除成功");
        }else {
            return ResponseResult.error("删除失败");
        }
    }

    /**
     * 批量删除职称
     * @param ids
     * @return
     */
    @DeleteMapping("/")
    public ResponseResult deleteTJobLevelByIds(@RequestParam("ids") int[] ids){
        int count = tJobLevelService.deleteTJobLevelByIds(ids);
        if(count > 0){
            return ResponseResult.success("删除成功");
        }else {
            return ResponseResult.error("删除失败");
        }
    }
}
